package Q1500_1599;

import java.util.Arrays;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

/**
 * 1816. 截断句子
 * <p>
 * 句子 是一个单词列表，列表中的单词之间用单个空格隔开，且不存在前导或尾随空格。每个单词仅由大小写英文字母组成（不含标点符号）。
 * <p>
 * 例如，"Hello World"、"HELLO" 和 "hello world hello world" 都是句子。
 * <p>
 * 给你一个句子 s 和一个整数 k ，请你将 s截断 ，使截断后的句子仅含 前 k 个单词。返回 截断 s 后得到的句子。
 * <p>
 *  
 * <p>
 * 示例 1：
 * <p>
 * 输入：s = "Hello how are you Contestant", k = 4
 * <p>
 * 输出："Hello how are you"
 * <p>
 * 解释：
 * <p>
 * s 中的单词为 ["Hello", "how" "are", "you", "Contestant"]
 * <p>
 * 前 4 个单词为 ["Hello", "how", "are", "you"]
 * <p>
 * 因此，应当返回 "Hello how are you"
 * <p>
 * <p>
 * 示例 2：
 * <p>
 * 输入：s = "What is the solution to this problem", k = 4
 * <p>
 * 输出："What is the solution"
 * <p>
 * 解释：
 * <p>
 * s 中的单词为 ["What", "is" "the", "solution", "to", "this", "problem"]
 * <p>
 * 前 4 个单词为 ["What", "is", "the", "solution"]
 * <p>
 * 因此，应当返回 "What is the solution"
 * <p>
 * 示例 3：
 * <p>
 * <p>
 * 输入：s = "chopper is not a tanuki", k = 5
 * <p>
 * 输出："chopper is not a tanuki"
 * <p>
 *  
 * <p>
 * 提示：
 * <p>
 * 1 <= s.length <= 500
 * <p>
 * k 的取值范围是 [1,  s 中单词的数目]
 * <p>
 * s 仅由大小写英文字母和空格组成
 * <p>
 * s 中的单词之间由单个空格隔开
 * <p>
 * 不存在前导或尾随空格
 */
public class TruncateSentence {
    public String truncateSentence(String s, int k) {
        for (int start = 0; start < s.length(); ) {
            int index = s.indexOf(' ', start);
            k--;
            if (index > -1) {
                if (k == 0) {
                    return s.substring(0, index);
                } else {
                    start = index + 1;
                }
            } else {
                if (k == 0) {
                    return s;
                } else {
                    return "";
                }
            }

        }
        return s;
    }

    public static void main(String[] args) {
        TruncateSentence sentence = new TruncateSentence();
        System.out.println(sentence.truncateSentence("Hello how are you Contestant", 4));
        System.out.println(sentence.truncateSentence("What is the solution to this problem", 4));
        System.out.println(sentence.truncateSentence("Hello how are you Contestant", 5));
    }
}
